import { getPORfqs } from "@/lib/procurement-rfqs/services" import { searchParamsCache } from "@/lib/procurement-rfqs/validations" import { getValidFilters } from "@/lib/data-table" import { Shell } from "@/components/shell" import { DataTableSkeleton } from "@/components/data-table/data-table-skeleton" import { RFQListTable } from "@/lib/procurement-rfqs/table/rfq-table" import { type SearchParams } from "@/types/table" import * as React from "react" import { InformationButton } from "@/components/information/information-button" interface RfqPageProps { searchParams: Promise } export default async function RfqPage(props: RfqPageProps) { // searchParams를 await하여 resolve const searchParams = await props.searchParams // 파라미터 파싱 const search = searchParamsCache.parse(searchParams); const validFilters = getValidFilters(search.filters); // RFQ 서버는 기본필터와 고급필터를 분리해서 받으므로 그대로 전달 const promises = Promise.all([ getPORfqs({ ...search, // 모든 파라미터 전달 (page, perPage, sort, basicFilters, filters 등) filters: validFilters, // 고급 필터를 명시적으로 오버라이드 (파싱된 버전) }) ]) return ( {/* fullscreen variant 사용 */} {/* 고정 헤더 영역 */}

RFQ

{/* 테이블 영역 - 남은 공간 모두 차지 */}
} >
) }